package com.meteor.user.service;

import com.meteor.framework.mybatis.service.BaseService;
import com.meteor.user.entity.SysOrg;
import com.meteor.user.query.SysOrgQuery;
import com.meteor.user.query.SysRoleQuery;
import com.meteor.user.query.SysRoleUserQuery;
import com.meteor.user.vo.SysOrgVO;

import java.util.List;
import java.util.Map;

/**
 * 机构管理
 * 
 * @author lynn
 * @date 2024/1/03
 */
public interface SysOrgService extends BaseService<SysOrg> {

	List<SysOrgVO> getList(SysOrgQuery query);

	void save(SysOrgVO vo);

	void update(SysOrgVO vo);

	void delete(String id);

	/**
	 * 根据机构ID，获取子机构ID列表(包含本机构ID)
	 * @param id   机构ID
	 */
	List<String> getSubOrgIdList(String id);

    List<SysOrgVO> orgMerchant(String merchantId);

    List<SysOrgVO> getAllList(SysOrgQuery query);

	Map<String, List<String>> getSubMapOrgIdList(String orgId, Integer value);

}